package br.com.dbsti.pedido;

import java.io.Serializable;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.SequenceGenerator;
import javax.persistence.Table;
import org.apache.commons.lang.builder.EqualsBuilder;
import org.apache.commons.lang.builder.HashCodeBuilder;

@Entity
@SequenceGenerator(name="SeqProduto", allocationSize=1, 
        initialValue=1, sequenceName="SQ_Produto")
@Table(name="CADASTROPRODUTO")
public class Produto implements Serializable {
    
    @Id
    @GeneratedValue(strategy= GenerationType.SEQUENCE, generator="SeqProduto")
    @Column(length=6)
    private Integer codigo;
    @Column(length=60)
    private String  nome;

    @Override
    public boolean equals(Object obj) {
        if (obj instanceof Produto){
            Produto c = (Produto) obj;
            return new EqualsBuilder().append(this.codigo, c.codigo).isEquals();
        }
        return false;
    }

    @Override
    public int hashCode() {
        return new HashCodeBuilder().append(this.codigo).toHashCode();
    }
    
    

    public Integer getCodigo() {
        return codigo;
    }

    public void setCodigo(Integer codigo) {
        this.codigo = codigo;
    }

    public String getNome() {
        return nome;
    }

    public void setNome(String nome) {
        this.nome = nome;
    }
}
